import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;

public class ListIteratorDemo {
    public static void main(String[] args) {
        //创建集合对象
        List<String> list = new ArrayList<>();
        //添加元素
        list.add("Hello");
        list.add("World");
        list.add("Java");

        ListIterator<String> lit = list.listIterator();
        while(lit.hasNext()){
            String s = lit.next();
            if(s.equals("World"))
                lit.add("Javaee");
        }
        //不会产生并发修改异常，因为 ListItr类中的 add()方法调用时会将modCount 直接赋值给 expectModCount
        //next()方法调用checkForComodification()方法时，两个变量的值一致，所以不报错


        System.out.println(list);
    }
}
